(A) Field of the Invention
The present invention relates to a method of motion estimation for video compression.
(B) Description of the Related Art
Due to the strong demand of storing and transmitting an enormous amount of video data, video compression has been a very important and practical problem in recent years. Motion estimation (ME) is an indispensable part in video compression and has been popularly utilized to reduce the spatial and temporal information redundancy. Block matching algorithms (BMA) are required for ME in many video standards, such as MPEG-1 [1], MPEG-2 [2], MPEG-4 [3], H.263 [4], and H.264 [5]. In BMA, frames are divided into non-overlapping macroblocks, and it needs to find a motion vector (MV) in a pre-defined search range for each macroblock. The simplest BMA is the full search (FS) algorithm. This algorithm exhaustively searches over all possible locations in the search range and picks the most suitable block as the MV, so that it finds the optimal solution within the search range. However, FS has a fatal drawback, i.e. the high computational cost. Therefore, it is not practical to use FS in video compression, especially in real-time applications.
To reduce the computational complexity of FS, many fast BMAs, such as three-step search, new three step search, four step search (FSS), and diamond search (DS) are proposed. Fast BMAs strategically check possible candidates in the search range to decrease the number of search points. Most video encoders apply fast BMAs for motion estimation since they can significantly reduce the search time without noticeable video quality degradation. The most important criterion for a fast BMA is to find an accurate MV with as few search points as possible.
In multi-reference frame motion estimation, the method for obtaining a motion vector of a block from multi-reference frames becomes crucial for current video compression.